import type {
  Coordinates,
  LatencyList,
  UpdateCoordinates,
  HongKongAreaType,
} from '@/types';

export const areaData: Coordinates = {
  'Seattle,WA': {
    lat: 47.6593682,
    lng: -122.3093674,
    continents: 'North America',
    description: '',
  },
  'San Jose,CA': {
    lat: 37.33461238,
    lng: -121.8824705500928,
    continents: 'North America',
    description: '',
  },
  'Los Angeles,CA': {
    lat: 34.04025101,
    lng: -118.2695357,
    continents: 'North America',
    description: '',
  },
  'Denver,CO': {
    lat: 39.73926211,
    lng: -104.994868,
    continents: 'North America',
    description: '',
  },
  'Dellas,TX': {
    lat: 32.77641428,
    lng: -96.79708242,
    continents: 'North America',
    description: '',
  },
  'Atlanta,GA': {
    lat: 33.82911182,
    lng: -84.37774122,
    continents: 'North America',
    description: '',
  },
  'Miami,FL': {
    lat: 25.74825601,
    lng: -80.3524117713009,
    continents: 'North America',
    description: '',
  },
  Toronto: {
    lat: 43.66340125,
    lng: -79.39604759,
    continents: 'North America',
    description: '',
  },
  'Chicago,IL': {
    lat: 41.87215456,
    lng: -87.6250079,
    continents: 'North America',
    description: '',
  },
  'New York,NY': {
    lat: 40.712778,
    lng: -74.00593254,
    continents: 'North America',
    description: '',
  },
  'Ashburn,VA': {
    lat: 39.04613235,
    lng: -77.5027562,
    continents: 'North America',
    description: '',
  },
  Lima: {
    lat: -12.04669146799419,
    lng: -77.04210184168524,
    continents: 'South America',
    description: '',
  },
  'La Paz': {
    lat: -16.515702359651378,
    lng: -68.1214679503743,
    continents: 'South America',
    description: '',
  },
  SaoPaulo: {
    lat: -23.64600824,
    lng: -46.62965655,
    continents: 'South America',
    description: '',
  },
  Johannesburg: {
    lat: -26.13710059,
    lng: 28.24160099,
    continents: 'South America',
    description: '',
  },
  Madrid: {
    lat: 40.41289944513233,
    lng: -3.7040079152109917,
    continents: 'Europe',
    description: '',
  },
  Marseille: {
    lat: 43.43807915,
    lng: 5.215939008,
    continents: 'Europe',
    description: '',
  },
  Paris: {
    lat: 48.82968184,
    lng: 2.290239113,
    continents: 'Europe',
    description: '',
  },
  London: {
    lat: 51.5069141089734,
    lng: -0.12742865258132285,
    continents: 'Europe',
    description: '',
  },
  Milan: {
    lat: 45.453968977683594,
    lng: 9.185625331188572,
    continents: 'Europe',
    description: '',
  },
  Zurioh: {
    lat: 46.754446182324905,
    lng: 7.9850006103515625,
    continents: 'Europe',
    description: '',
  },
  Frankfurt: {
    lat: 50.03806855,
    lng: 8.56212616,
    continents: 'Europe',
    description: '',
  },
  Luxembourg: {
    lat: 49.63440055,
    lng: 6.216364285,
    continents: 'Europe',
    description: '',
  },
  Amsterdam: {
    lat: 52.36575635,
    lng: 4.897036835,
    continents: 'Europe',
    description: '',
  },
  Stockholm: {
    lat: 59.31355681428481,
    lng: 18.0689378824307,
    continents: 'Europe',
    description: '',
  },
  'St.Petersburg': {
    lat: 59.928706318651464,
    lng: 30.360483479777745,
    continents: 'Europe',
    description: '',
  },
  Moscow: {
    lat: 55.4105977,
    lng: 37.89990773,
    continents: 'Europe',
    description: '',
  },
  Kyiv: {
    lat: 50.43940553240878,
    lng: 30.529140684629386,
    continents: 'Europe',
    description: '',
  },
  Budharest: {
    lat: 44.42006185,
    lng: 26.12633796,
    continents: 'Europe',
    description: '',
  },
  Sofia: {
    lat: 42.66614279271889,
    lng: 23.389149140745182,
    continents: 'Europe',
    description: '',
  },
  Athers: {
    lat: 37.93402794,
    lng: 23.94737981,
    continents: 'Europe',
    description: '',
  },
  'Nicosia/Limassol': {
    lat: 35.14500424,
    lng: 33.30471788,
    continents: 'Europe',
    description: '',
  },
  Dubal: {
    lat: 25.19723328,
    lng: 55.27972698,
    continents: 'Europe',
    description: '',
  },
  Bishkek: {
    lat: 42.87500878,
    lng: 74.59049437,
    continents: 'Asia',
    description: '',
  },
  Yangon: {
    lat: 16.90278543029756,
    lng: 96.13517761230469,
    continents: 'Asia',
    description: '',
  },
  Bangkok: {
    lat: 13.75335637893043,
    lng: 100.5014717247989,
    continents: 'Asia',
    description: '',
  },
  'Phnom Penh': {
    lat: 11.55251596,
    lng: 104.8449808,
    continents: 'Asia',
    description: '',
  },
  Sihanoukville: {
    lat: 10.60510097,
    lng: 103.5533678,
    continents: 'Asia',
    description: '',
  },
  'Kuala Lumpor': {
    lat: 3.1530908,
    lng: 101.7127043,
    continents: 'Asia',
    description: '',
  },
  Jakarta: {
    lat: -6.211688794877983,
    lng: 106.84634063822644,
    continents: 'Asia',
    description: '',
  },
  Singapore: {
    lat: 1.404270245,
    lng: 103.7931197,
    continents: 'Asia',
    description: '',
  },
  'Ho Chi Minh': {
    lat: 10.81911106665553,
    lng: 106.62758347279673,
    continents: 'Asia',
    description: '',
  },
  Hanoi: {
    lat: 21.017465468039404,
    lng: 105.84054263223432,
    continents: 'Asia',
    description: '',
  },
  HongKong: {
    lat: 22.27933546,
    lng: 114.1587339,
    continents: 'Asia',
    description: '',
  },
  Manila: {
    lat: 14.53227693,
    lng: 121.0083518,
    continents: 'Asia',
    description: '',
  },
  Taiper: {
    lat: 24.99854409,
    lng: 121.5808652,
    continents: 'Asia',
    description: '',
  },
  Seoul: {
    lat: 37.55353272,
    lng: 126.9698313,
    continents: 'Asia',
    description: '',
  },
  Tokyo: {
    lat: 35.65859841,
    lng: 139.7455198,
    continents: 'Asia',
    description: '',
  },
  Mexico: {
    lat: 23.634501,
    lng: -102.552784,
    continents: 'North America',
    description: '',
  },
  'Jacksonville,FL': {
    lat: 30.3321838,
    lng: -81.65565099999999,
    continents: 'North America',
    description: '',
  },
  Panama: {
    lat: 8.537981,
    lng: -80.782127,
    continents: 'North America',
    description: '',
  },
  Cartagena: {
    lat: 10.372374155656322,
    lng: -75.47626587241571,
    continents: 'North America',
    description: '',
  },
  'San Juan': {
    lat: 18.4670588,
    lng: -66.1184593,
    continents: 'North America',
    description: '',
  },
  'St.Croix': {
    lat: 17.7245968,
    lng: -64.83479919999999,
    continents: 'North America',
    description: '',
  },
  Maiquetia: {
    lat: 10.5971386,
    lng: -66.97821019999999,
    continents: 'North America',
    description: '',
  },
  Buenavenura: {
    lat: 3.8830471,
    lng: -77.01972119999999,
    continents: 'North America',
    description: '',
  },
  Bogota: {
    lat: 4.710988599999999,
    lng: -74.072092,
    continents: 'South America',
    description: '',
  },
  Quito: {
    lat: -0.1806532,
    lng: -78.4678382,
    continents: 'South America',
    description: '',
  },
  Guayaquil: {
    lat: -2.1894128,
    lng: -79.8890662,
    continents: 'South America',
    description: '',
  },
  Fortaleza: {
    lat: -3.7327203,
    lng: -38.5270134,
    continents: 'South America',
    description: '',
  },
  Cochabamba: {
    lat: -17.4139766,
    lng: -66.1653224,
    continents: 'South America',
    description: '',
  },
  'Santa Cruz': {
    lat: -17.811659852053392,
    lng: -63.156483908105464,
    continents: 'South America',
    description: '',
  },
  'Rio de Janeiro': {
    lat: -22.9068467,
    lng: -43.1728965,
    continents: 'South America',
    description: '',
  },
  'Santiago de Chile': {
    lat: -33.4488897,
    lng: -70.6692655,
    continents: 'South America',
    description: '',
  },
  'Buenos Aires': {
    lat: -34.6036844,
    lng: -58.3815591,
    continents: 'South America',
    description: '',
  },
  Lisboa: {
    lat: 38.7222524,
    lng: -9.1393366,
    continents: 'Europe',
    description: '',
  },
  Limbe: {
    lat: 4.022465599999999,
    lng: 9.1954432,
    continents: 'South America',
    description: '',
  },
  Luanda: {
    lat: -8.8146556,
    lng: 13.2301756,
    continents: 'Africa',
    description: '',
  },
  Mombasa: {
    lat: -4.0434771,
    lng: 39.6682065,
    continents: 'Africa',
    description: '',
  },
  'Cape Town': {
    lat: -33.9248685,
    lng: 18.4240553,
    continents: 'Africa',
    description: '',
  },
  Djibouti: {
    lat: 11.825138,
    lng: 42.590275,
    continents: 'Africa',
    description: '',
  },
  Istanbul: {
    lat: 41.0082376,
    lng: 28.9783589,
    continents: 'Europe',
    description: '',
  },
  Helsinki: {
    lat: 60.16985569999999,
    lng: 24.938379,
    continents: 'Europe',
    description: '',
  },
  Novosibirsk: {
    lat: 54.9832693,
    lng: 82.8963831,
    continents: 'Europe',
    description: '',
  },
  Almaty: {
    lat: 43.2379761,
    lng: 76.8828618,
    continents: 'Europe',
    description: '',
  },
  Ulaanbaatar: {
    lat: 47.88639879999999,
    lng: 106.9057439,
    continents: 'Asia',
    description: '',
  },
  Mumbai: {
    lat: 19.0759837,
    lng: 72.8776559,
    continents: 'Asia',
    description: '',
  },
  Cochin: {
    lat: 9.9312328,
    lng: 76.26730409999999,
    continents: 'Asia',
    description: '',
  },
  Khabarovsk: {
    lat: 48.4814433,
    lng: 135.0720667,
    continents: 'Asia',
    description: '',
  },
  Vladivostok: {
    lat: 43.1332484,
    lng: 131.9112975,
    continents: 'Asia',
    description: '',
  },
  Guam: {
    lat: 13.444304,
    lng: 144.793731,
    continents: 'Asia',
    description: '',
  },
  Fiji: {
    lat: -17.713371,
    lng: 178.065032,
    continents: 'Oceania',
    description: '',
  },
  Hawaii: {
    lat: 19.8986819,
    lng: -155.6658568,
    continents: 'Asia',
    description: '',
  },
  Perth: {
    lat: -31.9523123,
    lng: 115.861309,
    continents: 'Oceania',
    description: '',
  },
  Sydney: {
    lat: -33.8688197,
    lng: 151.2092955,
    continents: 'Oceania',
    description: '',
  },
  Auckland: {
    lat: -36.85088270000001,
    lng: 174.7644881,
    continents: 'Oceania',
    description: '',
  },
  Chicago: {
    lat: 41.8781136,
    lng: -87.6297982,
    continents: 'North America',
    description: '',
  },
  NewYork: {
    lat: 40.712778,
    lng: -74.00593254,
    continents: 'North America',
    description: '',
  },
  ShangHai: {
    lat: 31.230416,
    lng: 121.473701,
    continents: 'Asia',
    description: '',
  },
  Dalian: {
    lat: 38.9139899,
    lng: 121.6147,
    continents: 'Asia',
    description: '',
  },
  BeiJing: {
    lat: 39.904211,
    lng: 116.407395,
    continents: 'Asia',
    description: '',
  },
  ZhengZhou: {
    lat: 34.7472499,
    lng: 113.62493,
    continents: 'Asia',
    description: '',
  },
  GuangZhou: {
    lat: 23.1290799,
    lng: 113.26436,
    continents: 'Asia',
    description: '',
  },
  DongGuan: {
    lat: 23.0206699,
    lng: 113.75179,
    continents: 'Asia',
    description: '',
  },
  Rome: {
    lat: 41.90258325878066,
    lng: 12.496511015964952,
    continents: 'Europe',
    description: '',
  },
  Zurich: {
    lat: 40.71029217180369,
    lng: -74.01229083538055,
    continents: 'North America',
    description: '',
  },
  Berlin: {
    lat: 52.50718394885391,
    lng: 13.383504152297974,
    continents: 'Europe',
    description: '',
  },
  Barcelona: {
    lat: 41.37568483648179,
    lng: 2.164697418635031,
    continents: 'Europe',
    description: '',
  },
  Geneva: {
    lat: 46.20052371593172,
    lng: 6.14124381867919,
    continents: 'Europe',
    description: '',
  },
  Washington: {
    lat: 38.89771307031185,
    lng: -77.03664779663086,
    continents: 'North America',
    description: '',
  },
  Dallas: {
    lat: 32.77397919073354,
    lng: -96.79617282014729,
    continents: 'North America',
    description: '',
  },
  Northville: {
    lat: 42.43087190032227,
    lng: -83.48331984439814,
    continents: 'North America',
    description: '',
  },
  Vancouver: {
    lat: 49.283126417869504,
    lng: -123.11781306252728,
    continents: 'North America',
    description: '',
  },
  'San Francisco': {
    lat: 37.76365837331252,
    lng: -122.41739273071289,
    continents: 'North America',
    description: '',
  },
  Boston: {
    lat: 42.35846797252633,
    lng: -71.05798967766724,
    continents: 'North America',
    description: '',
  },
  Newark: {
    lat: 40.73413687381786,
    lng: -74.17266011238098,
    continents: 'North America',
    description: '',
  },
  Philadelphia: {
    lat: 39.95248399009123,
    lng: -75.1640796661377,
    continents: 'North America',
    description: '',
  },
  'Oregon Portland': {
    lat: 45.59464486486231,
    lng: -122.68088656585535,
    continents: 'North America',
    description: '',
  },
  Montreal: {
    lat: 45.5032113359371,
    lng: -73.56383032542598,
    continents: 'North America',
    description: '',
  },
  Calgary: {
    lat: 51.04421429159346,
    lng: -114.07114557842938,
    continents: 'North America',
    description: '',
  },
  'Guangzhou&Shenzhen': {
    lat: 23.08582736519358,
    lng: 113.34425075271652,
    continents: 'Asia',
    description: '',
  },
};

const renices: string[] = [
  'Seattle,WA',
  'San Jose,CA',
  'Los Angeles,CA',
  'Denver,CO',
  'Dellas,TX',
  'Atlanta,GA',
  'Miami,FL',
  'Toronto',
  'Chicago,IL',
  'New York,NY',
  'Ashburn,VA',
  'Lima',
  'La Paz',
  'SaoPaulo',
  'Johannesburg',
  'Madrid',
  'Marseille',
  'Paris',
  'London',
  'Milan',
  'Zurioh',
  'Frankfurt',
  'Luxembourg',
  'Amsterdam',
  'Stockholm',
  'St.Petersburg',
  'Moscow',
  'Kyiv',
  'Budharest',
  'Sofia',
  'Athers',
  'Nicosia/Limassol',
  'Dubal',
  'Bishkek',
  'Yangon',
  'Bangkok',
  'Phnom Penh',
  'Sihanoukville',
  'Kuala Lumpor',
  'Jakarta',
  'Singapore',
  'Ho Chi Minh',
  'Hanoi',
  'HongKong',
  'Manila',
  'Taiper',
  'Seoul',
  'Tokyo',
];
const afters: string[] = [
  'Mexico',
  'Jacksonville,FL',
  'Panama',
  'Cartagena',
  'San Juan',
  'St.Croix',
  'Maiquetia',
  'Buenavenura',
  'Bogota',
  'Quito',
  'Guayaquil',
  'Fortaleza',
  'Cochabamba',
  'Santa Cruz',
  'Rio de Janeiro',
  'Santiago de Chile',
  'Buenos Aires',
  'Lisboa',
  'Limbe',
  'Luanda',
  'Mombasa',
  'Cape Town',
  'Djibouti',
  'Istanbul',
  'Helsinki',
  'Novosibirsk',
  'Almaty',
  'Ulaanbaatar',
  'Mumbai',
  'Cochin',
  'Khabarovsk',
  'Vladivostok',
  'Guam',
  'Fiji',
  'Hawaii',
  'Perth',
  'Sydney',
  'Auckland',
];
// 现有的POP点坐标对象
export const reniceLatLngData: Coordinates = {};
// 即将投入的POP点坐标对象
export const afterLatLngData: Coordinates = {};

renices.forEach((v: string) => {
  reniceLatLngData[v] = areaData[v];
});
afters.forEach((v: string) => {
  afterLatLngData[v] = areaData[v];
});

const latencys: string[] = [
  'HongKong',
  'Singapore',
  'Tokyo',
  'London',
  'Chicago',
  'Sydney',
  'NewYork',
  'ShangHai',
  'Dalian',
  'BeiJing',
  'ZhengZhou',
  'GuangZhou',
  'DongGuan',
];

// 金融低延时的POP点坐标对象
export const latencyLatLngData: Coordinates = {};
latencys.forEach((v: string) => {
  latencyLatLngData[v] = areaData[v];
});

export const latencyList: LatencyList = {
  HongKong: ['Singapore', 'Tokyo', 'London'],
  Tokyo: ['London', 'Chicago', 'Sydney', 'Singapore'],
  London: ['NewYork', 'Singapore'],
  Singapore: ['Sydney'],
  Sydney: ['Chicago'],
  ShangHai: ['Dalian', 'BeiJing', 'ZhengZhou', 'GuangZhou', 'DongGuan'],
};

const internationals: string[] = [
  'Singapore',
  'Tokyo',
  'Seoul',
  'Bangkok',
  'Manila',
  'Kuala Lumpor',
  'Ho Chi Minh',
  'London',
  'Frankfurt',
  'Paris',
  'Amsterdam',
  'Rome',
  'Madrid',
  'Zurich',
  'Moscow',
  'Berlin',
  'Marseille',
  'Milan',
  'Barcelona',
  'Geneva',
  'St.Petersburg',
  'Los Angeles,CA',
  'Seattle,WA',
  'NewYork',
  'Washington',
  'Dallas',
  'Northville',
  'Toronto',
  'Vancouver',
  'San Francisco',
  'Boston',
  'Newark',
  'Atlanta,GA',
  'Philadelphia',
  'Oregon Portland',
  'Montreal',
  'Calgary',
];

// 国际本地DIA&IPLC的POP点坐标对象
export const internationalLatLngData: Coordinates = {};
internationals.forEach((v: string) => {
  internationalLatLngData[v] = areaData[v];
});

const cloudLines = [
  'San Jose,CA',
  'New York,NY',
  'London',
  'Amsterdam',
  'Frankfurt',
  'BeiJing',
  'ShangHai',
  'HongKong',
  'Tokyo',
  'Guangzhou&Shenzhen',
  'Singapore',
  'Sydney',
];

// 国际云专线的POP点坐标对象
const cloudLineLatLngData: Coordinates = {};
cloudLines.forEach((v: string) => {
  cloudLineLatLngData[v] = areaData[v];
});

export const newCloudLineLatLngData: UpdateCoordinates = {
  'San Jose,CA': {
    lat: cloudLineLatLngData['San Jose,CA'].lat,
    lng: cloudLineLatLngData['San Jose,CA'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'oracleIcon',
      'IBMIcon',
    ],
  },
  'New York,NY': {
    lat: cloudLineLatLngData['New York,NY'].lat,
    lng: cloudLineLatLngData['New York,NY'].lng,
    icons: ['alibabaIcon', 'amazonIcon', 'microsoftIcon', 'oracleIcon'],
  },
  London: {
    lat: cloudLineLatLngData['London'].lat,
    lng: cloudLineLatLngData['London'].lng,
    icons: ['amazonIcon'],
  },
  Amsterdam: {
    lat: cloudLineLatLngData['Amsterdam'].lat,
    lng: cloudLineLatLngData['Amsterdam'].lng,
    icons: ['amazonIcon'],
  },
  Frankfurt: {
    lat: cloudLineLatLngData['Frankfurt'].lat,
    lng: cloudLineLatLngData['Frankfurt'].lng,
    icons: ['alibabaIcon'],
  },
  BeiJing: {
    lat: cloudLineLatLngData['BeiJing'].lat,
    lng: cloudLineLatLngData['BeiJing'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'tencentIcon',
      'huaweiIcon',
      'birdIcon',
    ],
  },
  ShangHai: {
    lat: cloudLineLatLngData['ShangHai'].lat,
    lng: cloudLineLatLngData['ShangHai'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'tencentIcon',
      'huaweiIcon',
      'birdIcon',
    ],
  },
  HongKong: {
    lat: cloudLineLatLngData['HongKong'].lat,
    lng: cloudLineLatLngData['HongKong'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'tencentIcon',
      'oracleIcon',
      'huaweiIcon',
      'googleIcon',
    ],
  },
  Tokyo: {
    lat: cloudLineLatLngData['Tokyo'].lat,
    lng: cloudLineLatLngData['Tokyo'].lng,
    icons: ['amazonIcon', 'googleIcon'],
  },
  'Guangzhou&Shenzhen': {
    lat: cloudLineLatLngData['Guangzhou&Shenzhen'].lat,
    lng: cloudLineLatLngData['Guangzhou&Shenzhen'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'tencentIcon',
      'huaweiIcon',
      'birdIcon',
    ],
  },
  Singapore: {
    lat: cloudLineLatLngData['Singapore'].lat,
    lng: cloudLineLatLngData['Singapore'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'tencentIcon',
      'oracleIcon',
      'huaweiIcon',
      'googleIcon',
    ],
  },
  Sydney: {
    lat: cloudLineLatLngData['Sydney'].lat,
    lng: cloudLineLatLngData['Sydney'].lng,
    icons: [
      'alibabaIcon',
      'amazonIcon',
      'microsoftIcon',
      'oracleIcon',
      'googleIcon',
    ],
  },
};

const hongkongAreaData: HongKongAreaType = {
  MEGAI: {
    lat: 22.266105715325622,
    lng: 114.24652968465574,
    name: 'Mega-i-Advantage',
    area: '柴灣',
    description: '香港柴灣柴灣道399號',
  },
  Megatwo: {
    lat: 22.397970236146207,
    lng: 114.19052124605147,
    name: 'SHK Logistics Centre',
    area: '火炭',
    description: '香港火炭黃竹洋街8號',
  },
  HK1: {
    lat: 22.365481757178852,
    lng: 114.1193171647239,
    name: 'Global Gateway',
    area: '荃灣',
    description: '香港荃灣楊屋道168號',
  },
  WTT: {
    lat: 22.37276333080961,
    lng: 114.1074263524568,
    name: 'Cable TV （WTT）',
    area: '荃灣',
    description: '香港新界荃湾海盛路9号有线电视大厦',
  },
  TGT: {
    lat: 22.286936384807248,
    lng: 114.27416661266292,
    name: 'TGT Data Centre',
    area: '将军澳',
    description: '香港將軍澳工業邨駿昌街22号1F',
  },
  WPC: {
    lat: 22.286476282450607,
    lng: 114.27510855380974,
    name: 'HKBN WPC数据中心',
    area: '将军澳',
    description: '香港將軍澳工業邨駿昌街22号2F',
  },
  NTT: {
    lat: 22.45347985267,
    lng: 114.18712969129548,
    name: 'NTT Tai Po Data Centre',
    area: '将军澳',
    description: '香港大埔工業邨大喜街2號',
  },
  CMI: {
    lat: 22.289050954260635,
    lng: 114.2719654958341,
    name: 'Global Network Centre',
    area: '将军澳',
    description: '香港將軍澳工業邨駿昌街3號',
  },
  EVG: {
    lat: 22.352760194246862,
    lng: 114.12457720838017,
    name: 'HKNet',
    area: '葵涌',
    description: '香港葵涌货柜码头路88号永得利广场2号楼15楼',
  },
  MCX: {
    lat: 22.35204036604927,
    lng: 114.12371510387024,
    name: 'PCCW MCX10 data center',
    area: '葵涌',
    description: '新界葵涌货柜码头路43号货物综合大楼',
  },
  RIH: {
    lat: 22.370023716960443,
    lng: 114.13787422956814,
    name: 'Cheung Wing Industrial Building ',
    area: '葵涌',
    description: '香港葵涌石蔭梨木道88號达利中心',
  },
  APT: {
    lat: 22.45363506212827,
    lng: 114.18792409142551,
    name: 'APT Satellite Data Centre',
    area: '将军澳',
    description: '香港大埔工業邨大貴街22號',
  },
  DGS: {
    lat: 22.28214228472344,
    lng: 114.27387613493826,
    name: 'Digital Savvis',
    area: '将军澳',
    description: '香港將軍澳工業邨駿才街33號',
  },
  CUG: {
    lat: 22.283345808857863,
    lng: 114.26923926232219,
    name: 'Global Center (China Unicom)',
    area: '将军澳',
    description: '香港將軍澳工業邨駿宏街19號',
  },
  HKC: {
    lat: 22.29084266398053,
    lng: 114.27452635020018,
    name: 'Telehouse HK Cloud Computing Complex (HKColo)',
    area: '将军澳',
    description: '香港將軍澳工業邨駿日街2號',
  },
  GSW: {
    lat: 22.286304366413198,
    lng: 114.27101399749517,
    name: 'Global Switch',
    area: '将军澳',
    description: '香港將軍澳工業邨駿日街18號',
  },
  HKEX: {
    lat: 22.285292304858565,
    lng: 114.27301726469382,
    name: 'Hong Kong Exchange',
    area: '将军澳',
    description: '香港將軍澳工業邨駿盈街1號',
  },
  NT1: {
    lat: 22.28554480373996,
    lng: 114.27220535640258,
    name: 'NTT TKO Data Centre - Tower 1',
    area: '将军澳',
    description: '香港將軍澳工業邨駿光街6號',
  },
  NT2: {
    lat: 22.28622675690626,
    lng: 114.27211380055125,
    name: 'NTT TKO Data Centre - Tower 2',
    area: '将军澳',
    description: '香港將軍澳工業邨駿光街6號',
  },
  CLS: {
    lat: 22.282582293013203,
    lng: 114.27220515723641,
    name: 'Telstra HKCS1',
    area: '将军澳',
    description: '香港將軍澳工業邨駿光街11號',
  },
  CL2: {
    lat: 22.283382856505973,
    lng: 114.27146316582666,
    name: 'Telstra Pacnet CS2',
    area: '将军澳',
    description: '香港將軍澳工業邨駿光街12號',
  },
  HK3: {
    lat: 22.367867210730854,
    lng: 114.11857475370903,
    name: 'AsiaTone i-Centre',
    area: '荃灣',
    description: '香港荃灣橫窩仔街1號',
  },
  HK2: {
    lat: 22.362284732067007,
    lng: 114.11921806633472,
    name: 'Kerry Godown - Tsuen Wan',
    area: '荃灣',
    description: '香港荃灣勝耀街3號',
  },
  HK4: {
    lat: 22.389441536410658,
    lng: 114.20607762630293,
    name: 'Ever Gain Building',
    area: '沙田',
    description: '香港沙田安心街22號',
  },
  ITT: {
    lat: 22.374362081526552,
    lng: 114.10971079946327,
    name: 'iTech Tower',
    area: '柴灣',
    description: '香港柴灣角白田壩街28號',
  },
  MGP: {
    lat: 22.293470211662193,
    lng: 114.27408076822758,
    name: 'Mega Plus',
    area: '柴灣',
    description: '香港柴湾环保大道299号',
  },
  HK5: {
    lat: 22.293212650296795,
    lng: 114.27407294718812,
    name: 'Mega Plus (Tower 2 - Equinix HK5)',
    area: '柴灣',
    description: '香港柴湾环保大道299号',
  },
  SIN: {
    lat: 22.26644396282925,
    lng: 114.24638644158786,
    name: 'Sino Favour Centre',
    area: '柴灣',
    description: '香港柴灣安業街1號',
  },
  CTT: {
    lat: 22.360132639718227,
    lng: 114.12006074676455,
    name: 'Citic Telecom Tower (HKIX2)',
    area: '葵涌',
    description: '香港葵涌葵福路93号',
  },
  IT2: {
    lat: 22.367627204289608,
    lng: 114.13657580183921,
    name: 'iTech Tower 2',
    area: '葵涌',
    description: '香港葵涌打磚坪街54-56號',
  },
  MITA: {
    lat: 22.36997305904457,
    lng: 114.13288049364489,
    name: 'Mita Centre',
    area: '葵涌',
    description: '香港葵涌青山公路葵涌段552-566號',
  },
  BIC: {
    lat: 22.32148666162458,
    lng: 114.20611593872309,
    name: 'Billion Centre HK',
    area: '九龍',
    description: '香港九龍灣宏光道1號',
  },
  ONA: {
    lat: 22.322702324309997,
    lng: 114.20588564738001,
    name: 'One Asia Data Centre (Legan Center)',
    area: '九龍',
    description: '香港九龍灣宏光道9號',
  },
  CPK: {
    lat: 22.389738783947685,
    lng: 114.20756442020496,
    name: 'Corporation Park',
    area: '沙田',
    description: '香港沙田石门工业村安丽街11号',
  },
  IX1: {
    lat: 22.38640801293752,
    lng: 114.20932808602471,
    name: 'HKIX1 (Pik Chiu Building, CUHK)',
    area: '沙田',
    description: '香港沙田香港中文大学中央大街',
  },
  IXB: {
    lat: 22.419625129022315,
    lng: 114.20676033943892,
    name: 'HKIX1B (Wu Ho Man Yuen Building)',
    area: '沙田',
    description: '香港沙田中大车站路胡文敏苑楼FTNS室2楼',
  },
  DCH: {
    lat: 22.238442718316062,
    lng: 114.15294583886862,
    name: 'DCH Motor Service Building',
    area: '鴨脷洲',
    description: '香港鴨脷洲利南道111號',
  },
  TMH: {
    lat: 22.279905999029356,
    lng: 114.17096649167907,
    name: 'Telecom House',
    area: '灣仔',
    description: '香港灣仔告士打道3號',
  },
};

const hongkongOerrides: string[] = [
  'MEGAI',
  'Megatwo',
  'HK1',
  'WTT',
  'WPC',
  'TGT',
  'NTT',
  'CMI',
  'EVG',
  'MCX',
  'RIH',
];

const hongkongReachables: string[] = [
  'APT',
  'DGS',
  'CUG',
  'HKC',
  'GSW',
  'HKEX',
  'NT1',
  'NT2',
  'CLS',
  'CL2',
  'HK3',
  'HK2',
  'HK4',
  'ITT',
  'MGP',
  'HK5',
  'SIN',
  'CTT',
  'IT2',
  'MITA',
  'BIC',
  'ONA',
  'CPK',
  'IX1',
  'IXB',
  'DCH',
  'TMH',
];

// 现有的POP点坐标对象
export const hongkongOerrideData: HongKongAreaType = {};
// 即将投入的POP点坐标对象
export const hongkongReachableData: HongKongAreaType = {};

hongkongOerrides.forEach((v: string) => {
  hongkongOerrideData[v] = hongkongAreaData[v];
});
hongkongReachables.forEach((v: string) => {
  hongkongReachableData[v] = hongkongAreaData[v];
});

// console.log(1299, hongkongOerrideData, hongkongReachableData);
